﻿@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Index.cshtml";
}
<div class="layuimini-container">
    <div class="layuimini-main">
        <fieldset class="table-search-fieldset layui-hide" id="searchField">
            <div>
                <form class="layui-form layui-form-pane">
                    <div class="layui-form-item">
                        <div class="layui-inline">
                            <label class="layui-form-label">关键字:</label>
                            <div class="layui-input-inline">
                                <input type="text" id="txt_keyword" name="txt_keyword" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div class="layui-inline">
                            <button type="submit" class="layui-btn layui-btn-primary" lay-submit lay-filter="data-search-btn"><i class="layui-icon">&#xe615;</i> 搜 索</button>
                        </div>
                    </div>
                </form>
            </div>
        </fieldset>
        <script type="text/html" id="toolbarDemo">
            <div class="layui-btn-container" id="toolbar">
                <button id="NF-add" name="NF-add" authorize class="layui-btn layui-btn-sm data-add-btn" lay-event="add"><i class="layui-icon">&#xe654;</i>新增</button>
                <button id="NF-edit" name="NF-edit" authorize class="layui-btn layui-btn-sm layui-btn-warm data-edit-btn layui-hide" lay-event="edit"><i class="layui-icon">&#xe642;</i>修改</button>
                <button id="NF-delete" name="NF-delete" authorize class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn layui-hide" lay-event="delete"> <i class="layui-icon">&#xe640;</i>删除</button>
                <button id="NF-details" name="NF-details" authorize class="layui-btn layui-btn-sm layui-btn-normal data-info-btn layui-hide" lay-event="details"> <i class="layui-icon">&#xe60b;</i>查看</button>
                <button id="NF-flow" name="NF-flow" authorize class="layui-btn layui-btn-sm data-split-btn layui-hide" lay-event="flow"> <i class="fa fa-key"></i>流程</button>
            </div>
        </script>
        <table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>
        <script type="text/html" id="currentTableBar">
            <a id="NF-edit" authorize class="layui-btn layui-btn-sm" lay-event="edit"><i class="layui-icon">&#xe642;</i></a>
            <a id="NF-delete" authorize class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn" lay-event="delete"><i class="layui-icon">&#xe640;</i></a>
            <a id="NF-details" authorize class="layui-btn layui-btn-sm layui-btn-normal" lay-event="details"><i class="layui-icon">&#xe60b;</i></a>
        </script>
    </div>
</div>
<script>
    layui.use(['jquery', 'form', 'table', 'commonTable', 'common', 'optimizeSelectOption'], function () {
        var $ = layui.jquery,
            form = layui.form,
            table = layui.table, commonTable = layui.commonTable
        common = layui.common;
        //权限控制(js是值传递)
        currentTableBar.innerHTML = common.authorizeButtonNew(currentTableBar.innerHTML);
        toolbarDemo.innerHTML = common.authorizeButtonNew(toolbarDemo.innerHTML);
        commonTable.rendertable({
            elem: '#currentTableId',
            url: '/ProcessManage/WorkOrder/GetGridJson',
            cols: [[
                { type: "radio", width: 50 },
                { field: 'F_WorkOrderCode', title: '工单编号', minWidth: 180, sort: true, filter: true },
                {
                    field: 'F_WorkOrderState', title: '工单状态', width: 120, sort: true, filter: true,
                    templet: function (d) {
                        if (d.F_WorkOrderState == 0) {
                            return "<span class='layui-btn layui-btn-normal layui-btn-xs'>等待中</span>";
                        }
                        if (d.F_WorkOrderState == 1) {
                            return "<span class='layui-btn layui-btn-warm layui-btn-xs'>执行中</span>";
                        }
                        if (d.F_WorkOrderState == 2) {
                            return "<span class='layui-btn layui-btn-xs'>已完成</span>";
                        }
                        if (d.F_WorkOrderState == 3) {
                            return "<span class='layui-btn layui-btn-danger layui-btn-xs'>已终止</span>";
                        }
                    }
                },
                { field: 'F_MaterialCode', title: '料号编号', width: 170, sort: true, filter: true },
                { field: 'F_MaterialName', title: '料号名称', width: 200, sort: true, filter: true },
                { field: 'F_MaterialDescription', title: '料号描述', width: 120, hide: true, filter: true },
                { field: 'F_MaterialSize', title: '料号规格', width: 120, hide: true, filter: true },
                { field: 'F_MaterialUnit', title: '料号单位', width: 120, hide: true, filter: true },
                { field: 'F_PlanNum', title: '计划数量', width: 105, sort: true, filter: true },
                { field: 'F_DoneNum', title: '完成数量', width: 105, sort: true, filter: true },
                { field: 'F_BadNum', title: '不良数量', width: 105, sort: true, filter: true },
                {
                    field: 'F_PlanStartTime', title: '计划开始时间', width: 170, sort: true, filter: { type: 'date[yyyy/MM/dd HH:mm:ss]' }
                },
                {
                    field: 'F_PlanEndTime', title: '计划结束时间', width: 170, sort: true, filter: { type: 'date[yyyy/MM/dd HH:mm:ss]' }
                },
                {
                    field: 'F_SplitTyp', title: '拆分类型', width: 105, sort: true, filter: true,
                    templet: function (d) {
                        if (d.F_SplitType == 0) {
                            return "单阶";
                        }
                        else {
                            return "尾阶";
                        }
                    }
                },
                {
                    field: 'F_OrderNum', title: '拆分工单', width: 105, sort: true, filter: true,
                    templet: function (d) {
                        if (d.F_OrderNum) {
                            return d.F_OrderNum;
                        }
                        return 0;
                    }
                },
                {
                    field: 'F_EnabledMark', title: '状态', width: 80, sort: true, filter: true,
                    templet: function (d) {
                        if (d.F_EnabledMark == true) {
                            return "<span class='layui-btn layui-btn-normal layui-btn-xs'>有效</span>";
                        } else {
                            return "<span class='layui-btn layui-btn-warm layui-btn-xs'>无效</span>";
                        }
                    }
                },
                { field: 'F_CreatorUserName', title: '创建人', width: 120, sort: true, filter: true },
                {
                    field: 'F_CreatorTime', title: '创建时间', width: 160, sort: true, filter: { type: 'date[yyyy/MM/dd HH:mm:ss]' }
                },
                { field: 'F_Description', title: '备注', minWidth: 120, hide: true, filter: true },
                { title: '操作', width: 175, toolbar: '#currentTableBar', align: "center" }

            ]]
        });
        // 监听搜索操作
        form.on('submit(data-search-btn)', function (data) {
            //执行搜索重载
            commonTable.reloadtable({
                elem: 'currentTableId',
                curr: 1,
                where: { keyword: data.field.txt_keyword }
            });
            return false;
        });
        wcLoading.close();
        //行点击事件监听，控制按钮显示
        var oneList = ["NF-edit", "NF-delete", "NF-details", "NF-flow"];//选择1条显示
        commonTable.tableRowClick("radio", "currentTableFilter", "currentTableId", oneList);
        //toolbar监听事件
        table.on('toolbar(currentTableFilter)', function (obj) {
            var data = table.checkStatus('currentTableId').data;
            if (obj.event === 'add') {  // 监听添加操作
                common.openNewTabByIframe({
                    title: "添加工单",
                    href: "/ProcessManage/WorkOrder/Form",
                });
            }
            else if (obj.event === 'delete') {
                if (data.length == 0) {
                    common.modalMsg("未选中数据", "warning");
                    return false;
                }
                common.deleteForm({
                    url: "/ProcessManage/WorkOrder/DeleteForm",
                    param: { keyValue: data[0].F_Id },
                    success: function () {
                        common.reload('data-search-btn');
                    }
                });
            }
            else if (obj.event === 'edit') {
                if (data.length == 0) {
                    common.modalMsg("未选中数据", "warning");
                    return false;
                }
                //if (data[0].F_WorkOrderState > 0) {
                //    common.modalMsg("工单已开始作业，无法修改", "warning");
                //    return false;
                //}
                common.openNewTabByIframe({
                    title: "编辑工单",
                    href: "/ProcessManage/WorkOrder/Form?keyValue=" + data[0].F_Id + "&orderstate=" +data[0].F_WorkOrderState,
                });
            }
            else if (obj.event === 'details') {
                if (data.length == 0) {
                    common.modalMsg("未选中数据", "warning");
                    return false;
                }
                common.openNewTabByIframe({
                    title: "查看工单",
                    href: "/ProcessManage/WorkOrder/Details?keyValue=" + data[0].F_Id,
                });
            }
            else if (obj.event === 'flow') {
                if (data.length == 0) {
                    common.modalMsg("未选中数据", "warning");
                    return false;
                }
                common.modalOpen({
                    title: "工单流程",
                    url: "/ProcessManage/WorkOrder/Flow?keyValue=" + data[0].F_Id,
                    width: "750px",
                    height: "650px",
                    btn:[],
                });
            }
            else if (obj.event === 'TABLE_SEARCH') {
                var _that = $("#searchField");
                if (_that.hasClass("layui-hide")) {
                    _that.removeClass('layui-hide');
                } else {
                    _that.addClass('layui-hide');
                }
            }
            return false;
        });
        //toolrow监听事件
        table.on('tool(currentTableFilter)', function (obj) {
            if (obj.event === 'delete') {
                common.deleteForm({
                    url: "/ProcessManage/WorkOrder/DeleteForm",
                    param: { keyValue: obj.data.F_Id },
                    success: function () {
                        obj.del();
                    }
                });
            }
            else if (obj.event === 'edit') {
                //if (obj.data.F_WorkOrderState > 0) {
                //    common.modalMsg("工单已开始作业，无法修改", "warning");
                //    return false;
                //}
                common.openNewTabByIframe({
                    title: "编辑工单",
                    href: "/ProcessManage/WorkOrder/Form?keyValue=" + obj.data.F_Id + "&orderstate=" + obj.data.F_WorkOrderState,
                });
            }
            else if (obj.event === 'details') {
                common.openNewTabByIframe({
                    title: "查看工单",
                    href: "/ProcessManage/WorkOrder/Details?keyValue=" + obj.data.F_Id,
                });
            }
            return false;
        });
    });
</script>
